Methods and systems for device wireless module diagnostics

ABSTRACT

Methods, devices and systems are provided for diagnosing a wireless module of a device. An exemplary method involves operating a second wireless module of the device to transmit data on a second wireless channel that overlaps, at least in part, a first wireless channel. A measured response associated with the first wireless channel concurrent to the data transmitted on the second wireless channel is obtained from the first wireless module and a remedial action is initiated with respect to the first wireless module based at least in part on the measured response.

TECHNICAL FIELD

The following description generally relates to diagnosing thefunctionality of a wireless communications module of an electronicdevice.

BACKGROUND

In recent times, wireless communications have become ubiquitous and havereplaced or surpassed many previous communications technologies. Forexample, many devices that previously utilized infrared datatransmission now utilize a wireless communications protocol instead,such as, ZigBee® radio frequency for consumer electronics (RF4CE) orBluetooth®. In practice, hardware faults, software faults, electrostaticdischarge events, and the like can impair wireless communicationsbetween two devices and degrade the user experience. However, theseproblems may be difficult for most users to recognize, diagnose, and fix(particularly when multiple devices or more complex communicationssystems are involved), and having to contact customer service or otherrepair personnel and schedule a maintenance appointment further degradesthe user experience. Accordingly, it is desirable to proactivelydiagnose and address wireless communications problems in a manner thatminimizes the impact on the user experience. Other desirable featuresand characteristics may also become apparent from the subsequentdetailed description and the appended claims, taken in conjunction withthe accompanying drawings and this background section.

BRIEF SUMMARY

According to various exemplary embodiments, systems, devices and methodsare provided for diagnosing a wireless module of a device. One exemplarymethod involves operating a second wireless module of the device totransmit data on a second wireless channel, obtaining, from the wirelessmodule being diagnosed, a measured response associated with the firstwireless channel concurrent to the data transmitted on the secondwireless channel by the second wireless module, and initiating aremedial action with respect to the wireless module based at least inpart on the measured response. At least a portion of the second wirelesschannel overlaps at least a portion of the first wireless channel.

In other embodiments, an apparatus for an electronic device is provided.The device includes a first wireless module to communicate on a firstwireless channel, a second wireless module, and a control module coupledto the first wireless module and the second wireless module. The devicecontrol module is configured to operate the second wireless module totransmit data on a second wireless channel, obtain a measured responseassociated with the first wireless channel concurrent to the datatransmitted on the second wireless channel from the first wirelessmodule, and initiate a reset of the first wireless module based at leastin part on the measured response. At least a portion of the secondwireless channel overlaps at least a portion of the first wirelesschannel.

In another embodiment, a media system includes an input device tocommunicate via a first wireless channel and a media device. The mediadevice includes a first wireless module to communicate with the inputdevice via the first wireless channel, a second wireless module, and acontrol module coupled to the first wireless module and the secondwireless module. The control module is configured to operate the secondwireless module to transmit data on a second wireless channel andobtain, from the first wireless module, a measured response associatedwith the first wireless channel concurrent to the data transmitted onthe second wireless channel. At least a portion of the second wirelesschannel overlaps at least a portion of the first wireless channel, andthe control module initiates a reset of the first wireless module basedat least in part on the measured response.

Various embodiments, aspects and other features are described in moredetail below.

BRIEF DESCRIPTION OF THE DRAWING FIGURES

Exemplary embodiments will hereinafter be described in conjunction withthe following drawing figures, wherein like numerals denote likeelements, and

FIG. 1 is a block diagram of a media system in accordance with one ormore embodiments;

FIG. 2 is a block diagram of a media device suitable for use in themedia system of FIG. 1 in accordance with one or more embodiments;

FIG. 3 is a flowchart of an exemplary diagnostics process suitable forimplementation by the media device of FIG. 2 in the media system of FIG.1 in accordance with one or more embodiments; and

FIG. 4 is a diagram illustrating a sequence of communications involvingthe media device of FIG. 2 in the media system of FIG. 1 in accordancewith one exemplary embodiment of the diagnostics process of FIG. 3.

DETAILED DESCRIPTION

The following detailed description of the invention is merely exemplaryin nature and is not intended to limit the invention or the applicationand uses of the invention. Furthermore, there is no intention to bebound by any theory presented in the preceding background, briefsummary, or the following detailed description.

Embodiments of the subject matter described herein generally relate todiagnosing a communications module of an electronic device. For purposesof explanation, the subject matter may be described herein in thecontext of diagnosing a wireless communications module of a mediadevice, such as a set-top box, a placeshifting device, televisionreceiver, a media player, or the like. However, it should be appreciatedthat the subject matter described herein is not necessary limited towireless communications or any particular type of device and may beimplemented in an equivalent manner for any electronic device thatincludes any type and number of communications modules.

In exemplary embodiments described herein, a media device self-diagnosesthe functionality of a wireless module that communicates with anexternal device using another wireless module of the media device. Forexample, the media device may include multiple different wirelessmodules configured to support multiple different communicationsprotocols that overlap, at least in part, on the radio frequencyspectrum. To diagnose a first wireless module communicating on a firstwireless channel, a control module of the media device operates a secondwireless module of the device to transmit diagnostic data on a secondwireless channel that overlaps, at least in part, the first wirelesschannel. The control module also operates the first wireless module tomonitor the first wireless channel concurrent to the diagnostics datatransmission and obtain a measured response associated with the firstwireless channel that is expected to be influenced, at least in part, bythe diagnostics data. The control module analyzes the measured responseand automatically initiates a remedial action with respect to the firstwireless module based at least in part on the measured response. Forexample, if the measured energy level on the first wireless channel issufficiently below an expected energy level on the first wirelesschannel given the diagnostics data transmission on the overlappingwireless channel, the control module may automatically reset, restart,or otherwise reinitialize the first wireless module. In this manner,potential anomalous conditions with a wireless module may beself-diagnosed and resolved by the media device in a manner that doesnot further degrade the user experience. For example, the user does notneed to schedule a maintenance appointment or inspect, restart or powercycle the media device while viewing and/or recording a broadcast mediaprogram. When the measured response matches the expected response, thecontrol module may determine the wireless module is functioning normallyand automatically initiate some other remedial action as appropriate.

FIG. 1 depicts a media system 100 configured to present a media program(or media content) on a display device 102 associated with a mediadevice 104. As used herein, “media content,” “media program,” orvariants thereof should be understood as referring to any audio, video,audio/visual or other programming in any streaming, file-based or otherformat. The media device 104 is communicatively coupled to an inputdevice 106 that functions as a user interface enabling user interactionwith the media device 104 to control, manipulate, or otherwise influencethe operation of the media device 104 and/or the content presented onthe display device 102.

The input device 106 is realized as an electronic device that is pairedor otherwise associated with the media device 104 in a manner thatallows the input device 106 to control operation of the media device104. In exemplary embodiments, the input device 106 is realized as aremote control associated with the media device 104 that communicateswith the media device 104 wirelessly in a point-to-point manner.However, in other embodiments, the input device 106 may be realized as amobile telephone, a laptop or notebook computer, a tablet computer, adesktop computer, a personal digital assistant, a video game player, aportable media player, a thermostat, a light switch, and/or any othercomputing device capable of communicating with the media device 104.That said, for purposes of explanation, the input device 106 may bedescribed herein in the context of a remote control paired with themedia device 104. In exemplary embodiments, the input device 106includes one or more user input elements for receiving input from aviewer of the display device 102 that is in possession of the inputdevice 106. The user input elements may include, for example, one ormore buttons, keys, keypads, keyboards, directional pads, joysticks,pointers, mice, touch panels or other touch-sensing elements, or thelike. In exemplary embodiments, input received by the input element maybe replicated or otherwise presented on the display device 102. Forexample, a position of a graphical user interface (GUI) element on thedisplay device 102, such as a pointer or cursor, may be correlated withthe user input on the input element.

The input device 106 includes at least one wireless communicationsmodule configured to support communications with the media device 104over a wireless communications channel. For example, the input device106 may be realized as a remote control that includes a wirelesscommunications module that supports wireless communications over anunlicensed radio band, such as, for example, using a 2.4 GHz carrierfrequency in accordance with an IEEE 802.15.4 protocol, such as theZigBee® radio frequency for consumer electronics (RF4CE) specification.Additionally or alternatively, the input device 106 may also include oneor more wireless communications modules configured to support wirelesscommunications with the media device 104 in accordance with a Bluetooth®specification, an IEEE 802.11 specification, or the like. That said, forpurposes of explanation and without limitation, exemplary embodimentsmay be described herein in the context of the input device 106 beingrealized as a remote control that wirelessly communicates with the mediadevice 104 in a point-to-point or peer-to-peer manner using RF4CEprotocols.

Still referring to FIG. 1, in the illustrated embodiment, the mediadevice 104 is any electronic device, hardware, or other componentcapable of receiving and processing media content and providing mediacontent to the display device 102 for presentation on the display device102. The display device 102 generally represents a television, monitor,liquid crystal display (LCD), light emitting diode (LED) display, plasmadisplay, or the like that graphically presents, renders, or otherwisedisplays imagery and/or video corresponding to media content provided bythe media device 104. In exemplary embodiments, the media device 104 isa set-top box (STB) or similar system that is able to receive televisionprogramming and/or to record certain media programs. Exemplaryembodiments of media device 104 will therefore include a receiverinterface 114 for receiving satellite, cable and/or broadcastprogramming signals from broadcast content sources 150, as well as adata storage medium 116 (e.g., a hard disk, flash memory, or anothersuitable non-volatile data storage element) to support a digital videorecorder (DVR) feature and/or functionality, and a display interface 118for providing imagery and/or video corresponding to a media program tothe display device 102. For convenience, but without limitation, thedata storage medium 116 is alternatively referred to herein as a DVR. Insome embodiments, the media device 104 may also include an access cardinterface or card reader 120 adapted to receive an access card 121 (orviewing card) configured to ensure that the viewer is authorized to viewmedia content provided to the display device 102. In this regard, theaccess card 121 may include unique identification information associatedwith a particular subscriber to the broadcast content source 150 orotherwise include information that facilitates receiving and/or decodingmedia content provided by the broadcast content source 150.

The media device 104 also includes a plurality of communications modules122 configured to support communications to/from the media device 104,as described in greater detail below in the context of FIG. 2. In thisregard, the media device 104 includes at least one wirelesscommunications module configured to support wireless communications withthe input device 106. For example, the media device 104 may include aRF4CE module configured to support wireless communications with theremote control 106 in accordance with the RF4CE specification. Inexemplary embodiments, the media device 104 also includes one or moreadditional wireless communications modules configured to support thediagnostics process 300, as described in greater detail below in thecontext of FIGS. 2-3. Additionally, in the illustrated embodiment ofFIG. 1, at least one of the communications modules 122 of the mediadevice 104 is configured to support communications with a remote server108 via a communications network 107. For example, one of thecommunications modules 122 may be realized as a cellular transceiver, awired network interface controller (e.g., an Ethernet adapter), oranother suitable network interface. As described in greater detail belowin the context of FIGS. 3-4, in one or more embodiments, the remoteserver 108 may be configured to receive diagnostics information from themedia device 104, maintain diagnostics records for the communicationsmodules 122 of the media device 104, and/or automatically facilitatemaintenance or other remedial actions with respect to a communicationsmodule 122 of the media device 104.

It should be appreciated that FIG. 1 depicts merely one exemplaryembodiment of a media device 104, and in practice, the media device 104may be physically and/or logically implemented in any manner to suit theneeds of a particular embodiment. In this regard, in some embodiments,the components in media device 104 may be provided within a commonchassis or housing as illustrated in FIG. 1, although equivalentembodiments may implement media device 104 with any number ofinter-connected but discrete components or systems. For example, in someembodiments, the media device 104 may be realized as a combination of aSTB and a placeshifting device, wherein some features of the mediadevice 104 (e.g., the DVR 116, the receiver 114, the display interface118, communications modules 122) are implemented by the STB and otherfeatures of the media device 104 (e.g., the network interface 124) areimplemented by the placeshifting device, wherein the placeshiftingdevice works in conjunction with the STB to shift the viewing experiencefrom a home television (e.g., display device 102) to another displaythat is accessed via network (e.g., network 107). Examples ofplaceshifting devices that may be used in some embodiments of mediadevice 104 could include any of the various SLINGBOX products availablefrom Sling Media of Foster City, Calif., although other products orservices could be used in other embodiments. Many different types ofplaceshifting devices are generally capable of receiving media contentfrom an external source, such as any sort of DVR or STB, cable orsatellite programming source, DVD player, content servers, and/or thelike. In other embodiments, placeshifting features are incorporatedwithin the same device that provides content-receiving or othercapabilities. Media device 104 may be a hybrid DVR and/or receiver, forexample, that also provides transcoding and placeshifting features.

Still referring to FIG. 1, in the illustrated embodiment, media device104 is capable of receiving digital broadcast satellite (DBS) signalstransmitted from a broadcast source 150, such as a satellite, using anantenna 140 that provides received signals to the receiver 114.Equivalent embodiments, however, could receive programming at receiver114 from any sort of cable connection, broadcast source, removablemedia, network service, external device and/or the like. The DVR 116feature stores recorded programming (e.g., broadcast programmingreceived via receiver 114) on a hard disk drive, memory, or otherstorage medium as appropriate in response to user/viewer programminginstructions, wherein the recorded programming may be subsequentlyviewed on display device 102 or placeshifted to another client devicevia a network. Content stored in DVR 116 may be any sort of file-basedprogramming or other content that is accessible to media device 104.Additionally, media content in DVR 116 may be stored in any sort ofcompressed or uncompressed format, as desired, and may be encoded ortranscoded as desired for effective receipt, storage, retrieval andplaying.

Still referring to FIG. 1, the media device 104 includes a controlmodule 110 configured to direct, manage, or otherwise control theoperations of the media device 104 as appropriate. The control module110 may be realized as any suitable combination of hardware, firmware,and/or other components of the media device 104 capable of directing,managing or otherwise controlling the operations of media device 104.The control module 110 may be realized using any suitable processingsystem, processing device, or combination thereof. For example, thecontrol module 110 may include one or more processors, centralprocessing units (CPUs), graphics processing units (GPUs), controllers,microprocessors, microcontrollers, processing cores and/or othercomputing resources configured to support the subject matter describedherein. The media device 104 also includes a data storage element (ormemory) 112 that is coupled to or otherwise accessed by the controlmodule 110. The memory 112 may be realized using as random access memory(RAM), read only memory (ROM), flash memory, magnetic or optical massstorage, or any other suitable configuration of non-transitory short orlong term data storage or other non-transitory computer-readable mediacapable of storing programming instructions for execution by the controlmodule 110. The stored programming instructions, when read and executedby the control module 110, cause the control module 110 to performvarious tasks, functions, and/or processes to control operations of themedia device 104 and support the diagnostics process 300 described ingreater detail below in the context of FIG. 3. In some embodiments, thecontrol module 110 is implemented as a “system on a chip” (SoC) thatincorporates a hybrid microcontroller with memory, input/output andother features to perform the various processing and other functionalityof media device 104, and in which case a separate memory 112 may not beprovided.

FIG. 2 depicts an exemplary embodiment of a media device 200 suitablefor use as the media device 104 in the media system 100 of FIG. 1 inaccordance with one or more embodiments. The media device 200 includes,without limitation, a control module 202 (e.g., control module 110), aplurality of wireless communications modules 204, 206, 208, and anetwork interface 210 (or network communications module). As describedin greater detail below in the context of FIGS. 3-4, in exemplaryembodiments, the control module 202 is configured to diagnose thefunctionality of a first wireless module 204, 206, 208 using one or moreof the other wireless modules 204, 206, 208 and initiate one or moreremedial actions based on the diagnosis. It should be understood thatFIG. 2 is a simplified representation of the media device 200 forpurposes of explanation and is not intended to limit the subject matterdescribed herein in any way. In this regard, although FIG. 2 depicts themodules 202, 204, 206, 208, 210 as physically distinct and separateelements (e.g., on separate semiconductor dies), in practice, one ormore of the modules 202, 204, 206, 208, 210 may be integrated with oneor more of the other modules 202, 204, 206, 208, 210 (e.g., on a commonsemiconductor die).

In exemplary embodiments, the wireless communications modules 204, 206,208 is configured to support wireless communications in accordance witha wireless communications protocol or specification that is differentfrom that of the other wireless communications modules 204, 206, 208.For example, in the illustrated embodiment, the first wireless module204 is configured to support communications in accordance with the RF4CEspecification or another ZigBee® specification, the second wirelessmodule 206 is configured to support communications in accordance with aBluetooth® specification, and the third wireless module 208 isconfigured to support communications in accordance with an IEEE 802.11specification (e.g., WiFi). That said, in alternative embodiments, oneor more of the wireless modules 204, 206, 208 may be configured tosupport communications in accordance with the same protocol orspecification. The network interface 210 generally represents thehardware, circuitry and/or other components of the media device 200configured to support communications over a network (e.g., network 107),such as, for example, a cellular transceiver, a wired network interfacecontroller (e.g., Ethernet), a coaxial transceiver interface, or thelike.

The illustrated wireless communications modules 204, 206, 208 include,without limitation, a communications control module 212, 222, 232configured to interface with the device control module 202 and supportoperations of its respective wireless module 204, 206, 208, an antenna216, 226, 236, and a radio frequency (RF) core 214, 224, 234 coupledbetween its respective antenna 216, 226, 236 and its respective controlmodule 212, 222, 232. In this regard, the RF core 214, 224, 234represents the hardware, circuitry and/or other components of therespective wireless module 204, 206, 208 configured to convert digitalbaseband signals to analog radio frequency signals to be transmitted viathe respective antenna 216, 226, 236 and convert analog radio frequencysignals received via the respective antenna 216, 226, 236 tocorresponding digital baseband signals. In this regard, each RF core214, 224, 234 may include one or more mixers, frequency doublers,frequency dividers, baluns, mixers, amplifiers, transmitters, receivers,transceivers, or the like. It should be noted that although FIG. 2depicts separate antennas 216, 226, 236 for each of the wireless modules204, 206, 208 coupled to the separate RF cores 214, 224, 234 for each ofthe wireless modules 204, 206, 208, in alternative embodiments, theantennas 216, 226, 236 may be shared, combined, or otherwise multiplexedacross more than one wireless module 204, 206, 208 or otherwise utilizedto support more than one communications protocol.

Each of the communications control modules 212, 222, 232 may be realizedas any suitable combination of hardware, firmware, and/or othercomponents configured to provide an interface to/from its respectivewireless module 204, 206, 208 and support the operations of itsrespective wireless module 204, 206, 208 described herein. In thisregard, the communications control modules 212, 222, 232 may include orotherwise be realized using any suitable processing system, processingdevice, or combination thereof, such as, for example, one or moreprocessors, controllers, microprocessors, microcontrollers, processingcores or the like. Additionally, each of the communications controlmodules 212, 222, 232 may include or otherwise access a data storageelement or other non-transitory computer (or machine) readable mediumthat stores programming instructions that, when read and executed, causethe respective control module 212, 222, 232 to perform various tasks,functions, processes and/or operations and support the subject matterdescribed herein.

In exemplary embodiments described herein, at least two of the wirelessmodules 204, 206, 208 are configured to communicate over the samefrequency band (or range) or otherwise communicate over a wirelesscommunications channel that overlaps a wireless communications channelof another wireless module 204, 206, 208. For example, each of thewireless modules 204, 206, 208 may communicate on the 2.4 GHz frequencyband using discrete channels having a designated or recognized centerfrequency within the 2.4 GHz frequency band. For example, the firstwireless module 204 utilize the RF4CE wireless communications channel15, which is centered on 2.425 GHz with a channel width of 2 MHz, whilethe second wireless module 206 may utilize Bluetooth channel 38, whichis centered on 2.426 GHz with a channel width of 1 MHz that overlapsRF4CE channel 15, or the third wireless module 208 may utilize 802.11channel 3, which is centered on 2.422 GHz with a channel width of 20 MHzthat overlaps RF4CE channel 15. To put it another way, the wirelessmodules 204, 206, 208 may communicate on different, yet overlapping,wireless communications channels within a common frequency band (e.g.,the 2.4 GHz frequency).

FIG. 3 depicts an exemplary embodiment of a diagnostics process 300 fordiagnosing the functionality of a wireless communications module in anelectronic device, such as media device 104, 200 in the media system 100of FIG. 1. The various tasks performed in connection with theillustrated process 300 may be implemented using hardware, firmware,software executed by processing circuitry, or any combination thereof.For illustrative purposes, the following description may refer toelements mentioned above in connection with FIGS. 1-2. In practice,portions of the diagnostics process 300 may be performed by differentelements of a media system 100, such as, for example, the media device104, the input device 106, the server 108, the device control module110, 202, the communications modules 122, 204, 206, 208, 210, thedisplay interface 118, the communications control modules 212, 222, 232,the RF cores 214, 216, 218 and/or the antennas 216, 226, 236. It shouldbe appreciated that the diagnostics process 300 may include any numberof additional or alternative tasks, the tasks need not be performed inthe illustrated order and/or the tasks may be performed concurrently,and/or the diagnostics process 300 may be incorporated into a morecomprehensive procedure or process having additional functionality notdescribed in detail herein. Moreover, one or more of the tasks shown anddescribed in the context of FIG. 3 could be omitted from a practicalembodiment of the diagnostics process 300 as long as the intendedoverall functionality remains intact.

Referring to FIG. 3, and with continued reference to FIGS. 1-2, inexemplary embodiments described herein, the diagnostics process 300 isinitiated by the media device control module 110, 202 to diagnose thefunctionality of a wireless communications module 204, 206, 208 andverify or otherwise confirm that the wireless communications module 204,206, 208 is operating as expected. In some embodiments, the diagnosticsprocess 300 may be initiated periodically for each of the wirelessmodules 204, 206, 208 of the media device 104, 200. For example, thedevice control module 202 may automatically initiate the diagnosticsprocess 300 to test the functionality of each of the wireless modules204, 206, 208 at a predetermined time every day (e.g., overnight or someother time when the user is not utilizing the media device 104, 200 toview media content on the display 102) or at regular periodic intervals(e.g., every 8 hours).

In exemplary embodiments described herein, the device control module110, 202 automatically initiates the diagnostics process 300 to diagnosethe RF4CE module 204 in response to detecting or otherwise identifyingan absence of communications with the input device 106. For example,depending on the embodiment, the input device 106 may be configured toperiodically poll the media device 104, 200 by transmitting a statusmessage to the media device 104, 200 (e.g., a heartbeat message, a datapoling message, a media access control (MAC) polling message, aping/pong message, or the like), or alternatively, the media device 104,200 may periodically poll the input device 106 by transmitting a requestmessage to the media device 104, 200, with the input device 106providing the status message in response to receiving the requestmessage. When the RF4CE module 204 is functioning as expected, thestatus message transmitted by the input device 106 is received by theRF4CE control module 212 via the antenna 216 and RF core 214 andretransmitted, rerouted, or otherwise relayed to the device controlmodule 202. In various embodiments, the device control module 202 maystore or otherwise maintain the status message and/or metadataassociated therewith (e.g., signal strength, time, and the like) forfuture diagnostics, or the device control module 202 may utilize thestatus messages to support over-the-air downloads or automatic updates,remote locate functionality, power management features of the inputdevice 106, and the like. In response to detecting the absence ofreceiving a status message from the input device 106 at the expectedperiodic interval, the device control module 110, 202 may automaticallyinitiate the diagnostics process 300 with respect to the RF4CE module204.

The diagnostics process 300 begins by configuring the device wirelessmodule under test and another wireless module of the device forcommunications on overlapping frequency bands (task 302). In thisregard, to diagnose the functionality of the RF4CE module 204, thedevice control module 202 configures one of the other wirelesscommunications modules 206, 208 of the media device 104, 200 forcommunicating on a wireless communications channel that overlaps, atleast in part, the wireless communications channel that the RF4CE module204 is configured for. For purposes of explanation, the wirelesscommunications module used to diagnose the wireless communicationsmodule under test may alternatively be referred to herein as the probingwireless module, and the wireless communications channel utilized by theprobing wireless module to diagnose the wireless module under test mayalternatively be referred to herein as the probing channel. Inaccordance with one embodiment, the device control module 202automatically selects the wireless communications module 206, 208 to beused as the probing wireless module based on one or more selectioncriteria. For example, a utilization metric (e.g., a current data rate,an amount of data sent/received over a preceding interval, or the like)may be utilized as a selection criterion, with the device control module202 automatically selecting the wireless communications module 206, 208with the lowest value for the utilization metric for use as the probingmodule. In this regard, if the Bluetooth module 206 is not currentlypaired with any other devices while the WiFi module 208 is periodicallybeing utilized, the device control module 110, 202 may automaticallyselect the Bluetooth module 206 for use as the probing module based onits utilization metric indicating it is not being as heavily or asfrequently utilized as the WiFi module 208. Conversely, if the Bluetoothmodule 206 is currently paired with another device while the WiFi module208 is not being utilized (or is transmitting data at a lower rate orfrequency than the Bluetooth module 206), the device control module 110,202 may automatically select the WiFi module 208 for use as the probingmodule. It should be appreciated that numerous possible selectioncriteria exists, and the subject matter described herein is not intendedto be limited to any particular type of selection criteria or selectionscheme.

In accordance with one or more embodiments, the device control module110, 202 automatically commands, signals, or otherwise instructs theprobing module to operate on a supported wireless communications channelthat overlaps the wireless communications channel that the module undertest is currently configured for without adjusting, changing, retuning,or otherwise reconfiguring the module under test. In this regard, thedevice control module 110, 202 may obtain the current channelinformation from the wireless module under test, identify the supportedwireless communications channel of the probing wireless module to beused as the probing channel, and instruct the probing wireless module totune itself to that identified channel. In one embodiment, the devicecontrol module 110, 202 selects the probing channel from among aplurality of wireless channels of the protocol supported by the probingwireless module based on the amount of overlap between the probingchannel and the wireless channel utilized by the module under test beinggreater than the amount of overlap of the remaining wireless channelssupported by the probing module. In other embodiments, the devicecontrol module 110, 202 selects the channel that is closest to thewireless channel utilized by the module under test for use as theprobing channel based on the difference between the center frequency ofthat channel and the wireless channel utilized by the module under testbeing less than the difference between the respective center frequenciesof the remaining wireless channels supported by the probing module.

For example, when the RF4CE module 204 under test is operating on RF4CEwireless communications channel 15 and Bluetooth module 206 is selectedas the probing module, the device control module 110, 202 may identifyBluetooth channel 38 as being the supported channel having a centerfrequency closest to the center frequency of RF4CE channel 15 andcommand, signal, or otherwise instruct the Bluetooth control module 222to tune or otherwise configure the RF core 224 for channel 38.Similarly, if the WiFi module 208 were selected as the probing module,the device control module 110, 202 may identify 802.11 channel 4 asbeing the supported channel having a center frequency closest to thecenter frequency of RF4CE channel 15 and command, signal, or otherwiseinstruct the WiFi control module 232 to tune or otherwise configure itsassociated RF core 234 for channel 4.

In some embodiments, the device control module 110, 202 mayautomatically command or instruct the module under test to operate on asupported wireless communications channel that is not currently in use,before commanding or instructing the probing module for a channel thatoverlaps that wireless communications channel of the module under testthat was not previously in use. In this regard, the device controlmodule 110, 202 may obtain the current channel information from thewireless module under test, identify the supported wirelesscommunications channel that is least likely to be in use by otherdevices that could otherwise interfere with the diagnostics process 300.For example, if the RF4CE module 204 under test was previouslycommunicating with the input device 106 on RF4CE channel 15, the devicecontrol module 110, 202 may identify or otherwise select RF4CE channel20 or RF4CE channel 25 for use for the purposes of the diagnosticsprocess 300 and command, signal, or otherwise instruct the RF4CE controlmodule 212 to tune or otherwise configure the RF core 214 for theselected channel. Thereafter, the device control module 110, 202configures the selected probing module for an overlapping channel. Forexample, when the RF4CE module 204 under test has been configured forRF4CE channel 20 (with a center frequency of 2.450 GHz) for diagnosticpurposes and Bluetooth module 206 is selected as the probing module, thedevice control module 110, 202 may identify Bluetooth channel 22 as theprobing channel based on its center frequency of 2.450 GHz being thesame as that of RF4CE channel 20, and thereafter command, signal, orotherwise instruct the Bluetooth control module 222 to tune or otherwiseconfigure the RF core 224 for channel 22. Similarly, if the WiFi module208 were selected as the probing module, the device control module 110,202 may identify 802.11 channel 9 as being the probing channel having acenter frequency (e.g., 2.452 GHz) closest to the center frequency ofRF4CE channel 20, and thereafter command, signal, or otherwise instructthe WiFi control module 232 to tune or otherwise configure itsassociated RF core 234 for channel 9.

In yet other embodiments, the device control module 110, 202 mayautomatically command or instruct the module under test to operate on asupported wireless communications channel that overlaps the wirelesscommunications channel that the probing module is currently configuredfor without changing, retuning, or otherwise reconfiguring the probingmodule. For example, if the Bluetooth module 206 is selected as theprobing module and the Bluetooth module 206 is currently paired withanother device on Bluetooth channel 35 (with a center frequency of 2.476GHz), the device control module 110, 202 may identify RF4CE channel 25as being closest to the probing channel based on its center frequency of2.475 GHz, and thereafter command, signal, or otherwise instruct theRF4CE control module 212 to tune or otherwise configure the RF core 214for channel 25. Similarly, if the WiFi module 208 is selected as theprobing module and is currently configured for one of 802.11 channels7-10, the device control module 110, 202 may identify RF4CE channel 25as being the supported channel that overlaps at least a portion of theprobing channel bandwidth, and thereafter command, signal, or otherwiseinstruct the RF4CE control module 212 to tune or otherwise configure theRF core 214 for channel 25.

After configuring the wireless modules so that the module under test andthe probing module are communicating on overlapping channels, thediagnostics process 300 continues by operating the wireless module undertest to listen, monitor, or otherwise assess traffic on its configuredchannel while concurrently operating the probing wireless module totransmit diagnostic data on its configured channel (tasks 304, 306). Inthis regard, the wireless module under test obtains a measured responseindicative of the data communications and/or traffic on its currentchannel, which is likely be influenced, at least in part, by theconcurrent transmission of diagnostic data by the probing wirelessmodule on an overlapping channel when the module under test isfunctioning normally.

In exemplary embodiments, the device control module 110, 202 commands orotherwise instructs the module under test to monitor or assess datacommunications on its configured channel in a manner that ensures themodule under test is monitoring its configured channel concurrent to atleast some of the diagnostic data transmission by the probing module. Inthis regard, the device control module 110, 202 may instruct the moduleunder test to perform a channel assessment or another similar operationwith respect to its configured channel for a duration of time that isgreater than or equal to the duration of time during which the probingmodule will transmit diagnostic data. For example, the device controlmodule 110, 202 may instruct the RF4CE module 204 to perform a clearchannel assessment continuously for the maximum duration of time allowedby the applicable protocols or specifications governing itscommunications. In some embodiments, the device control module 110, 202may instruct the RF4CE module 204 to perform a clear channel assessmentsynchronously or simultaneously to instructing the probing module 206,208 to transmit diagnostic data.

In other embodiments, the device control module 110, 202 may instructthe RF4CE module 204 to perform the clear channel assessmentcontinuously or repeatedly for the expected duration of time of thediagnostic data transmission by the probing module 206, 208. Forexample, if the timeout time associated with the clear channelassessment or energy detection for the applicable protocol is relativelyshort (e.g., in comparison to the maximum allowable duration for thediagnostic data transmission), the device control module 110, 202 mayinstruct the under test module 204 to repeatedly perform the assessmentover the duration of the diagnostic data transmission to obtain a set ofmeasurement data samples. In such embodiments, the device control module110, 202 may perform statistical analysis of the measurement datasamples to the maximum measured response, the median measured response,the average measured response, and/or another statistical measuredresponse. In some embodiments, measurement data samples may be obtainedwhen the diagnostic data is not being transmitted to provide a referenceresponse or otherwise normalize the measured response.

In exemplary embodiments, the device control module 110, 202 alsocommands or otherwise instructs the probing wireless module to transmitdummy data or test data on its configured channel in a manner thatensures the module under test will monitoring its configured channelconcurrently for at least some of the data transmission by the probingmodule. For example, the device control module 110, 202 may instruct theprobing module 206, 208 to transmit dummy data for a particular durationof time (or alternatively, an amount of data that entails at least thatparticular duration of time for transmission) that is greater than orequal to the duration of time during which the RF4CE module 204 willmonitor its configured channel. For example, the device control module110, 202 may instruct the probing module 206, 208 to transmit a dummypacket of data having a packet length or size that is equal to themaximum packet length allowed by the applicable protocols orspecifications governing its communications. In this regard, the devicecontrol module 110, 202 may instruct the RF4CE module 204 to perform aclear channel assessment for the duration of time corresponding to theexpected amount of time required for the probing module 206, 208 totransmit a data packet having that maximum packet length. It should benoted that there are numerous ways to configure the probing module'sdata transmission to concur with the module under test's channelassessment, and the subject matter described herein is not limited toany particular manner for configuring the two to overlap in time.

Still referring to FIG. 3, the diagnostics process 300 receives orotherwise obtains the measured response from the wireless module undertest and analyzes the measured response to identify or otherwisedetermine whether the wireless module under test is functioning normally(tasks 308, 310). As described above, the wireless module under testobtains the measured response concurrent to the data transmission by theprobing wireless module, and therefore, the measured response may becompared to an expected response from the wireless module under test forthe diagnostic data transmission by the probing wireless module todetermine whether the wireless module under test is functioningnormally. In this regard, when the measured response is less than theexpected response, the diagnostics process 300 determines a potentialanomalous condition exists with respect to the module under test andinitiates one or more remedial actions with respect to the module undertest, as described in greater detail below. Although the subject matteris described herein in the context of identifying an anomalous conditionbased on the difference in magnitude of the measured response relativeto the expected response, in alternative embodiments, the diagnosticsprocess 300 may analyze the measured response for frequency drift by oneof the wireless modules. In such embodiments, when the measured responseis indicative of frequency drift, the diagnostics process 300 determinesa potential anomalous condition exists and initiates one or moreremedial actions with respect to the module under test.

In one or more embodiments, the control module 110, 202 calculates anexpected energy detection level for the probing channel based on one ormore characteristics of the dummy data transmitted by the probingwireless module, such as, for example, the amount of data transmitted orthe bandwidth of the transmission, the duration or timing of the dummydata transmission, the carrier frequency of the probing channel, thebandwidth overlap between the probing channel and the channel beingmonitored by the module under test, the transmit power level, themodulation scheme utilized for the dummy data transmission, and thelike. Additionally, the control module 110, 202 may account for thephysical location or other physical relationship of the probing wirelessmodule with respect to the module under test. When the probing module orthe module under test can be repositioned or reconfigured by beingplugged into different ones of a plurality of possible physical ports onthe media device 104, 200, the control module 110, 202 may also accountfor the relative locations and performance characteristics for theparticular ports of the media device 104, 200 being used. In someembodiments, an expected response for each wireless module 204, 206, 208with respect to each of the other wireless modules 204, 206, 208 may becharacterized for the particular media device 104, 200 prior todeployment, or alternatively, for a reference media device that is thenstored or otherwise downloaded to instances of the media device 104, 200(e.g., from the server 108) for subsequent usage.

For example, as described above, the device control module 110, 202 mayselect the WiFi module 208 as the probing module for diagnosing theRF4CE module 204 and command the WiFi module 208 to transmit dummy datahaving known characteristics over a probing channel that overlaps thechannel of the RF4CE module 204. Additionally, the device control module110, 202 may command the RF4CE module 204 to perform a channelassessment or energy detection concurrently to the dummy datatransmission by the WiFi module 208 and obtain the correspondingmeasured energy level from the RF4CE module 204. Based on thecharacteristics of the dummy data, the device control module 110, 202may determine an energy level expected to be measured by the RF4CEmodule 204 energy detection and compare the measured energy level to theexpected energy level.

In exemplary embodiments, when the measured response is less than theexpected response, the diagnostics process 300 determines an anomalouscondition potentially exists with respect to the module under test andautomatically initiates a reset of the module under test (task 312). Insome embodiments, the diagnostics process 300 identifies a potentialanomalous condition only when the measured response is less than theexpected response by at least a threshold amount, which is chosen toaccount for interference, uncertainty, and any other factors that arelikely to influence the measured response. That said, in someembodiments, the threshold amount may be equal to zero, in which casethe diagnostics process 300 identifies a potential anomalous conditionwhenever the measured response is less than the expected response. Forexample, when the measured energy level obtained from the RF4CE module204 is less than the expected energy level by at least a thresholdamount (which may be equal to zero), the device control module 110, 202automatically signals, commands, or otherwise instructs the RF4CEcontrol module 212 to restart or otherwise reset the RF4CE module 204.In this regard, the power may be cycled for the antenna 216 and the RFcore 214, for example, by decoupling the circuitry and components fromthe energy source or otherwise discharging any stored energy beforerestoring power to the antenna 216 and the RF core 214. In this manner,the antenna 216 and the RF core 214 may be restored to their initializedstate. Additionally, the RF4CE control module 212 reboots, resets, orotherwise restarts itself to restore its initialized state. In thisregard, if a component of the RF4CE module 204 is hanging, freezing, orotherwise locked up and influencing the ability of the RF4CE module 204to receive messages or other data from the input device 106, restartingthe RF4CE module 204 may resolve any potential anomalous condition sothat the media device 104, 200 is capable of resuming normalcommunications with the input device 106.

Still referring to FIG. 3, in exemplary embodiments, the diagnosticsprocess 300 maintains a diagnostics record for the module under test andupdates the diagnostics record to reflect the newly identified potentialanomalous condition (task 314). In this regard, in some embodiments, thecontrol module 110, 202 may store or otherwise maintain (e.g., in memory112) a record or log that maintains diagnostic information pertaining toany anomalous conditions identified by the control module 110, 202 for aparticular wireless module under test. In other embodiments, the controlmodule 110, 202 uploads diagnostic information pertaining to anidentified anomalous condition to the server 108 via the network 107,with the server 108 maintaining the diagnostics record for the mediadevice 104, 200. The diagnostics record may be utilized to track thedate and/or time of the anomalous conditions, the total number ofanomalous conditions identified, the total number of times theparticular wireless module has been reset, the signal strengthassociated with the last good communication with the input device 106,system logs or other events, and the like.

In the illustrated embodiment, based on the diagnostics record, thediagnostics process 300 automatically identifies or otherwise determineswhether the potential anomalous condition should be escalated for one ormore remedial actions in addition to resetting the module (task 316),and if so, the diagnostics process 300 automatically initiates one ormore additional remedial actions with respect to the module under test(task 318). The control module 110, 202 and/or the server 108 maycalculate or otherwise determine one or more performance metricsindicative of the condition of the module under test and automaticallyidentify when to escalate based on a performance metric violating anapplicable escalation criterion. For example, the control module 110,202 may calculate a number of anomalous conditions over a preceding timeinterval (e.g., the preceding 24 hours, the preceding week, or thelike), an average duration of time between anomalous conditions (or rateof anomalous conditions), or the like, and determine to escalate theanomalous condition when the metric violates an applicable threshold(e.g., a maximum number of anomalous conditions over a particular timeinterval, a maximum frequency of anomalous conditions, a minimumduration of time between anomalous conditions, or the like). Inexemplary embodiments, the escalation criteria are chosen such that nofurther remedial actions are initiated when resetting the wirelessmodule under test is effective at restoring communications between theinput device 106 and the media device 104, 200 for a sufficient durationof time such that further repair or replacement of the wireless moduleunder test is unlikely.

In accordance with one or more embodiments, the control module 110, 202generates or otherwise provides a notification to the user that apotential anomalous condition exists with respect to the module undertest. For example, the control module 110, 202 may generate or otherwiseprovide a GUI on the display device 102 that indicates the media device104, 200 is having difficulty receiving communications from the inputdevice 106 and suggests or otherwise recommends the user inspect thesurrounding environment for potential sources of interference, considerrepositioning the media device 104, or undertake other suggestedremedial actions that may improve the ability of the media device 104,200 to receive communications from the input device 106. In otherembodiments, the displayed notification on the display device 102 mayrecommend or otherwise suggest that the user contact customer serviceand/or schedule maintenance with respect to the media device 104, 200.

In some embodiments, the server 108 may automatically schedule orotherwise initiate maintenance with respect to the media device 104,200. For example, when the server 108 stores or otherwise maintains thediagnostics record, in response to identifying the value for aperformance metric associated with the media device 104, 200 violates anapplicable escalation criterion, the server 108 may automaticallygenerate and transmit a message (e.g., an e-mail, a text message, or thelike), via the network 107, to the appropriate maintenance personnel orthe appropriate maintenance organization that identifies the potentialanomalous condition and/or the media device 104, 200 that should beserviced. In this regard, the server 108 may store or otherwise accesscustomer information associated with the media device 104, 200 (e.g.,customer contact information, address information, and the like) andprovide that information in the message transmitted to maintenancepersonnel, who, in turn, may utilize that information to contact thecustomer and proceed accordingly.

Referring again to FIG. 3, in some embodiments, when the diagnosticsprocess 300 is automatically initiated in response to a failure toreceive a status message from the input device and the measured responseis greater than or equal to the expected response, the diagnosticsprocess 300 determines an anomalous condition exists with respect to theinput device and initiates one or more remedial actions with respect tothe input device or some other aspect of the media system (task 320). Insuch embodiments, the control module 110, 202 may determine that thewireless module under test is functioning normally or is otherwisecapable of receiving messages from the input device 106 and that theinterruption in communications between the input device 106 and thecontrol module 110, 202 may be attributed to something outside of themedia device 104, 200. For example, the control module 110, 202 maygenerate or otherwise provide a GUI on the display device 102 thatindicates the media device 104, 200 is having difficulty receivingcommunications from the input device 106 and suggests or otherwiserecommends the user recharge the input device 106 or inspect the inputdevice 106 for any other issues, inspect the surrounding environment forpotential sources of interference, consider repositioning the mediadevice 104, or undertake other suggested remedial actions that mayimprove the ability of the media device 104, 200 to receivecommunications from the input device 106.

FIG. 4 depicts an exemplary sequence 400 of communications within themedia system 100 of FIG. 1 in conjunction with the diagnostics process300 of FIG. 3 in accordance with one or more exemplary embodiments. Theexemplary sequence 400 depicts an embodiment where the media device 104,200 periodically receives status messages from the input device 106during normal operation via the RF4CE module 204 and automaticallyinitiates the diagnostics process 300 with respect to the RF4CE module204 in response to detecting an absence or failure to receive statusmessages. That said, it should be appreciated that FIG. 4 depicts merelyone simplified representation of a communications sequence for purposesof explanation and is not intended to limit the subject matter describedherein in any way.

Referring to FIG. 4, and with continued reference to FIGS. 1-3, theillustrated sequence 400 begins with the input device 106 periodicallytransmitting 402, 406 status messages to the RF4CE module 204 of themedia device 104, 200, which, in turn, reroutes, retransmits orotherwise provides 404, 408 a corresponding message to the devicecontrol module 110, 202. As illustrated, at a subsequent point in time,a status message transmitted 410 by the input device 106 is notforwarded to the device control module 110, 202. The device controlmodule 110, 202 may implement a timer or similar feature to monitor theduration of time that has elapsed since the most recent status messagewas received (e.g., by resetting the timer in response to receiving 408a status message). In response to determining that an amount of timethat has elapsed since the most recently received message exceeds athreshold amount of time, the device control module 110, 202 mayautomatically initiate the diagnostics process 300 with respect to theRF4CE module 204. The threshold amount of time may be chosen to allowfor a certain number of consecutive missed status messages beforeinitiating the diagnostics process 300. For example, if the input device106 transmits 402, 406, 410 the status messages periodically everythirty seconds, the threshold amount of time may be chosen to be betweensixty and ninety seconds to tolerate one missed status message andautomatically initiate the diagnostics process 300 when two consecutivestatus messages have not been received at the device control module 110,202.

Upon initiating the diagnostics process 300, the device control module110, 202 may automatically select or otherwise identify the WiFi module208 for use as the probing module based on the Bluetooth module 206currently being paired with another device. Thereafter, the devicecontrol module 110, 202 commands, instructs, or otherwise signals 412the control module 232 of the probing module 208 to tune, configure, orotherwise operate the RF core 234 and antenna 236 to transmit dummy dataon a probing wireless communications channel that overlaps the RF4CEchannel that will be monitored by the RF4CE module 204. In this manner,the device control module 110, 202 may instruct the probing module 208to temporarily tune from an initial wireless channel that is currently(or was previously) being utilized by the probing module 208. The devicecontrol module 110, 202 also commands, instructs, or otherwise signals414 the RF4CE control module 212 to configure or otherwise operate theRF core 214 and antenna 216 to detect the energy level for an RF4CE thatoverlaps the probing wireless communications channel. Thereafter, theprobing control module 232 operates the RF core 234 and antenna 236 totransmit dummy data 416 over the probing wireless channel, while theRF4CE control module 212 operates the RF core 214 and antenna 216 toconcurrently monitor the overlapped RF4CE channel and obtain a measuredresponse for the energy level associated with that RF4CE channel. Afterthe probing control module 232 operates the RF core 234 and antenna 236to transmit dummy data 416 over the probing wireless channel, theprobing control module 232 may reconfigure the RF core 234 and antenna236 for the initial wireless channel that was being utilized prior tothe diagnostics process 300.

As described above, the device control module 110, 202 receives orotherwise obtains 418 the measured energy level from the RF4CE controlmodule 212 and compares the measured energy level to the energy levelthat would be expected to be received by the RF4CE module 204 based onone or more characteristics of the dummy data transmitted 416 by theprobing module 208 and/or the physical relationship between the probingmodule 208 and the RF4CE module 204 (e.g., the separation distancebetween the modules 204, 208, the relative orientations of the antennas216, 236, and the like). When the measured energy level is less than theexpected energy level by a sufficient margin, the device control module110, 202 determines an anomalous condition may exist with respect to theRF4CE module 204 and automatically commands, instructs, or otherwisesignals 420 the RF4CE control module 212 to reset the RF4CE module 204.In this regard, the RF4CE control module 212 may temporarily discharge,decouple, or otherwise de-energize the RF core 214 and the antenna 216to restore them to an initialized state and restart or otherwise resetitself to its initialized state. In exemplary embodiments, whenresetting the RF4CE module 204 remedies the anomalous condition, theRF4CE module 204 resumes receiving status messages from the input device106 and rerouting received messages to the device control module 110,202 in a normal manner.

In embodiments, where resetting the RF4CE module 204 does not remedy theanomalous condition or the incidence of anomalous conditions detected bythe device control module 110, 202 exceeds one or more escalationcriteria, the device control module 110, 202 may automatically initiateone or more remedial actions with respect to the RF4CE module 204. Forexample, the device control module 110, 202 may generate or otherwiseprovide 422 a GUI on the display device 102 that notifies the user ofthe potential anomalous condition with respect to a communicationsmodule 122, 204, 206, 208 of media device 104, 200 and indicatessuggested or recommended remedial actions that may be performed by theuser (e.g., inspecting the input device 106, the media device 104, 200,and/or the surrounding operating environment, contacting customerservice, and/or the like). Additionally or alternatively, in someembodiments, the device control module 110, 202 may generate orotherwise provide 424, via network 107, a notification to a remoteserver 108 (e.g., an autocreated maintenance request message). Inresponse, the remote server 108 may facilitate automatic notificationsof maintenance personnel, automatic scheduling of maintenance visits,and the like. In yet other embodiments, the device control module 110,202 may generate or otherwise provide 424 a diagnostics messageindicative of the diagnosis of the RF4CE module 204 to the remote server108, which, in turn, may utilize its own escalation criteria todetermine when to automatically notify maintenance personnel,automatically schedule maintenance visits, and the like.

Referring again to FIGS. 1-3, it should be noted that although thesubject matter is described above in the context of a media device 104,200 including multiple wireless communications modules 204, 206, 208, inalternative embodiments, the subject matter described herein may also beimplemented with media devices that do not include a separate wirelesscommunications module that is available for use as a probing module. Insuch embodiments, instead of configuring and operating a probing moduleof the media device (e.g., tasks 302, 306), the device control module110, 202 generates or otherwise provides a GUI on the display device 102that instructs a user to operate another device to create interferenceon the channel being monitored by the module under test. For example,the device control module 110, 202 may instruct the user to maintain oneor more buttons on the input device 106 in a depressed state or tooperate another device in a manner that is likely to interfere with thechannel being monitored. The device control module 110, 202 may instructthe user to manually set another electronic device (e.g., the user'sphone, computer, or the like) into a wireless scan mode such that itwill communicate within a channel that overlaps the channel beingmonitored for at least a portion of the duration of the scan mode.Alternatively, the device control module 110, 202 may instruct the userto operate a microwave or another similar device that is likely toproduce electromagnetic interference within the channel being monitored.The GUI on the display device 102 may include one or more GUI elements(e.g., buttons or the like) that may also be manipulated by the user tosynchronize the operation of the external device with the media device104, 200, such that the wireless module under test monitors itsconfigured channel concurrent to the external device generatinginterference that overlaps the channel (e.g., task 308). Thereafter, thedevice control module 110, 220 receives the measured response from thewireless module under test, and when the measured response is indicativeof a failure to receive or detect any communications on the configuredchannel, the device control module 110, 220 initiates a reset of thewireless module under test and potentially other remedial actions in asimilar manner as described above (e.g., tasks 310, 312, 314, 316, 318).

To briefly summarize, the subject matter described herein allows for thefunctionality of a wireless module of a device to be diagnosed and resetwith limited manual intervention. For example, if a wireless module of adevice is experiencing latchup or some other electrostatic dischargecondition, an anomalous hardware state or condition, a firmware and/orsoftware hang, or the like, the anomalous operation of the wirelessmodule may be self-diagnosed and automatically reset by the devicewithout any action by a user. Thus, the user experience may be improvedby restoring the communications functionality of the device withoutburdening the user with diagnosing or remedying the problem.

The general systems, structures and techniques described above may beinter-combined, enhanced, modified and/or otherwise implemented toprovide any number of different features. In particular, the term“exemplary” is used herein to represent one example, instance orillustration that may have any number of alternates. Any implementationdescribed herein as “exemplary” should not necessarily be construed aspreferred or advantageous over other implementations.

For the sake of brevity, conventional techniques related to wirelesscommunications, protocols and/or specifications, channel assessments,resetting or restarting devices, and other functional aspects of thesystems (and the individual operating components of the systems) may notbe described in detail herein. The subject matter may be describedherein in terms of functional and/or logical block components, and withreference to symbolic representations of operations, processing tasks,and functions that may be performed by various computing components ordevices. It should be appreciated that in alternative embodiments thevarious block components shown in the figures may be equivalentlyrealized by any number of components configured to perform the specifiedfunctions. Furthermore, the connecting lines shown in the variousfigures contained herein are intended to represent exemplary functionalrelationships and/or physical couplings between the various elements. Itshould be noted that many alternative or additional functionalrelationships or physical connections may be present in an embodiment ofthe subject matter. In addition, certain terminology may also be usedherein for the purpose of reference only, and thus is not intended to belimiting. For example, terms such as “first,” “second” and other suchnumerical terms referring to structures do not imply a sequence or orderunless clearly indicated by the context.

While several exemplary embodiments have been presented in the foregoingdetailed description, it should be appreciated that a vast number ofalternate but equivalent variations exist, and the examples presentedherein are not intended to limit the scope, applicability, orconfiguration of the invention in any way. To the contrary, variouschanges may be made in the function and arrangement of the variousfeatures described herein without departing from the scope of the claimsand their legal equivalents. Accordingly, details of the exemplaryembodiments or other limitations described above should not be read intothe claims absent a clear intention to the contrary.

What is claimed is:
 1. A method of diagnosing a first wireless module ofa device, the method comprising: operating a second wireless module ofthe device to transmit data on a second wireless channel, at least aportion of the second wireless channel overlapping at least a portion ofa first wireless channel; obtaining, from the first wireless module, ameasured response associated with the first wireless channel concurrentto the data transmitted on the second wireless channel; and initiating aremedial action with respect to the first wireless module based at leastin part on the measured response.
 2. The method of claim 1, whereinoperating the second wireless module comprises instructing the secondwireless module to tune to the second wireless channel and transmit thedata after tuning to the second wireless channel.
 3. The method of claim1, further comprising selecting the second wireless channel from among aplurality of wireless channels supported by the second wireless modulebased on an amount of overlap between the portion of the second wirelesschannel and the portion of the first wireless channel.
 4. The method ofclaim 1, further comprising selecting the second wireless channel fromamong a plurality of wireless channels supported by the second wirelessmodule based on a difference between a center frequency of the secondwireless channel and a center frequency of the first wireless channel.5. The method of claim 1, further comprising determining an expectedresponse to the data on the first wireless channel, wherein initiatingthe remedial action comprises initiating the remedial action when themeasured response is less than the expected response.
 6. The method ofclaim 5, further comprising instructing the first wireless module todetect a measured energy level associated with the first wirelesschannel concurrent to the data transmitted on the second wirelesschannel, wherein: determining the expected response to the datacomprises determining an expected energy level associated with the firstwireless channel based on one or more characteristics of the datatransmitted on the second wireless channel by the second wirelessmodule; and initiating the remedial action comprises automaticallyresetting the first wireless module when the measured energy level isless than the expected energy level.
 7. The method of claim 1, whereininitiating the remedial action comprises automatically resetting thefirst wireless module based at least in part on the measured response.8. The method of claim 1, further comprising detecting an absence ofcommunications with an input device on the first wireless channel priorto operating the second wireless module to transmit the data on thesecond wireless channel in response to the absence.
 9. A devicecomprising: a first wireless module to communicate on a first wirelesschannel; a second wireless module; and a control module coupled to thefirst wireless module and the second wireless module to operate thesecond wireless module to transmit data on a second wireless channel,obtain a measured response associated with the first wireless channelconcurrent to the data transmitted on the second wireless channel fromthe first wireless module, and initiate a reset of the first wirelessmodule based at least in part on the measured response, wherein at leasta portion of the second wireless channel overlaps at least a portion ofthe first wireless channel.
 10. The device of claim 9, wherein: thefirst wireless module supports a first communications protocol; and thesecond wireless module supports a second communications protocoldifferent from the first communications protocol.
 11. The device ofclaim 10, the second communications protocol comprising a plurality ofwireless channels, wherein the control module selects the secondwireless channel from among the plurality of wireless channels based onan amount of overlap between the portion of the second wireless channeland the portion of the first wireless channel.
 12. The device of claim10, wherein the first wireless channel is different from the secondwireless channel.
 13. The device of claim 12, wherein a center frequencyof the first wireless channel is different from a center frequency ofthe second wireless channel.
 14. The device of claim 12, wherein abandwidth of the first wireless channel is different from a bandwidth ofthe second wireless channel.
 15. A media system comprising: an inputdevice to communicate via a first wireless channel; and a media devicecomprising: a first wireless module to communicate with the input devicevia the first wireless channel; a second wireless module; and a controlmodule coupled to the first wireless module and the second wirelessmodule to: operate the second wireless module to transmit data on asecond wireless channel; obtain, from the first wireless module, ameasured response associated with the first wireless channel concurrentto the data transmitted on the second wireless channel; and initiate areset of the first wireless module based at least in part on themeasured response, wherein at least a portion of the second wirelesschannel overlaps at least a portion of the first wireless channel. 16.The media system of claim 15, wherein the control module automaticallyoperates the second wireless module to transmit the data andautomatically operates the first wireless module to monitor the firstwireless channel concurrent to the data transmitted on the secondwireless channel in response to detecting an absence of communicationswith the input device via the first wireless channel.
 17. The mediasystem of claim 15, further comprising a display device coupled to themedia device, wherein: the input device comprises a remote control; andthe media device comprises a set-top box.
 18. The media system of claim17, wherein the control module is coupled to the display device togenerate a graphical user interface on the display device based at leastin part on the measured response.
 19. The media system of claim 15,wherein: the first wireless module supports a first communicationsprotocol; and the second wireless module supports a secondcommunications protocol different from the first communicationsprotocol.
 20. The media system of claim 15, wherein the first wirelesschannel is different from the second wireless channel.